package com.newlink.building.userinfo.mvp.contract

import com.newlink.building.common_base.base.IModel
import com.newlink.building.common_base.base.IPresenter
import com.newlink.building.common_base.base.IView
import com.newlink.building.common_base.model.bean.DefaultData
import com.newlink.building.common_base.model.bean.HttpResult
import io.reactivex.Observable

/**
 * @author wangyang
 * @date 2022/10/12
 * @description 我的——家庭管理——等待激活状态的详情页（邮箱）页面的Contract
 */
interface Module_UserInfo_FamilyManagementDetailWaitActivationEmailContract {

    interface Model : IModel {
        fun deleteFamilyManagement(
            token: String,
            userId: String
        ): Observable<HttpResult<DefaultData>>

        fun deleteFamilyManagementFromKcp(token: String, ownerId: String, delUserId: String)
    }

    interface View : IView {
        fun deleteFamilyManagementSuccess()
        fun deleteFamilyManagementFail()
    }

    interface Presenter : IPresenter<View> {
        fun deleteFamilyManagement(token: String, userId: String)
        fun deleteFamilyManagementFromKcp(token: String, ownerId: String, delUserId: String)
    }
}